package kassiopeia.plugin;

/**
 * <p>This is the as simple as possible interface to logging service.
 * 
 * <p>It is strongly recommended for plugins to use this logging implementation 
 * (instead of native logging framework like log4j), because logs which come from
 * here can be monitored by Kassiopeia's GUI.
 * 
 * <p>All methods are thread-safe.
 * 
 */
public interface Logger {

	void error(String message);
	void error(String message, Throwable throwable);
	void error(Throwable throwable);

	void warn(String message);
	void warn(String message, Throwable throwable);
	void warn(Throwable throwable);
		
	void info(String message);
	void info(String message, Throwable throwable);
	void info(Throwable throwable);
	
	void debug(String message);
	void debug(String message, Throwable throwable);
	void debug(Throwable throwable);
}
